#ifndef _MENU_H_
#define _MENU_H_

#include "screen.hpp"
#include <vector>

class MenuItem;

class MenuScreen : public Screen
{
public:
	void Clear();
	void Push(MenuItem *newitems[]);
	void BindStart(MenuItem *item, int bindtype, int bindcmd);

	bool Open();
	void Close();

	void In();
	void Update();
	void Out(float upfrac);

private:
	std::vector<MenuItem*> items;
	int cursor;
	MenuItem *bindmenu;
	MenuItem *binditem;
};

extern MenuScreen Menu;

#endif
